/**
 * Author(s): xuming.Wong <xuming.Wong@gmail.com>
 * Origin source from MaNGOS(GPL2).
 * Copyright (C) 2005-2010 MaNGOS <http://getmangos.com/>
 */

#ifndef __SPELL_MANAGER_H__
#define __SPELL_MANAGER_H__

#include "Object.h"

namespace PQCore
{
	class SpellManager
	{
	public:
		static SpellManager& getSingleton()
		{
			static SpellManager inst;
			return inst;
		}

		bool LoadSkillLineAbilityMap();
		bool LoadSpellChains();
		bool LoadSpellElixirs();
		bool LoadSpellLearnSkills();
		bool LoadSpellLearnSpells();
		bool LoadSpellProcEvents();
		bool LoadSpellBonuses();
		bool LoadSpellProcItemEnchant();
		bool LoadSpellThreats();
		bool LoadSpellScriptTarget();
		bool LoadPetLevelupSpellMap();
		bool LoadPetDefaultSpells();
		bool LoadSpellAreas();
		bool LoadSpellTargetPositions();
		bool LoadSpellPetAuras();
	};

}

#define SSpellMgr PQCore::SpellManager::getSingleton()

#endif
